課程資訊
課程名稱
計算機程式設計
Computer Programming 
開課學期
110-1 
授課對象
 
授課教師
黃俊郎 
課號
EE3031 
課程識別碼
901 33920 
班次
 
學分
3.0 
全/半年
半年 
必/選修
 
上課時間
星期五2,3,4(9:10~12:10) 
上課地點
 
備註
上課地點:計中212。。A6:量化分析與數學素養
總人數上限:52人 
Ceiba 課程網頁
http://ceiba.ntu.edu.tw/1101EE3031_PRGM 
課程簡介影片
 
核心能力關聯
核心能力與課程規劃關聯圖
課程大綱
為確保您我的權利,請尊重智慧財產權及不得非法影印
課程概述

此課程由介紹電腦演進過程與運作原理理開始,接著由淺入深讓學生熟悉程式結構與應用設計流程,包括:基本語法、流程控制、例外處理、輸出入與類別。 為增加學習成效與學習興趣,課程配合小組專題進行,配合上課教學進度,讓學生藉由實作強化對上課內容的理理解。課程大綱如下:
1. Introduction
2. The basics
3. Flow control
4. Functions & modules
5. Data structure
5. Classes and objects 

課程目標
近年來,程式設計在全世界帶起一股風潮,網路路上也出現了許多協助自學程式的網站,如:Codecademy、Girl Develop It、Udacity、Code Racer等。有趣的是,MIT Media Lab計畫執行長Mitch Resnick認為學習程式的重點並不是要將所有年輕人培訓成程式設計師,而是透過學習程式語言,開拓更更寬廣的學習途徑:學寫程式就是在學習創意思考、有系統的推論、和團隊合作,而這些技能不僅在各專業領域都受用無窮,更是生活中不可或缺的能力。
本課程的目的就是讓學生了解將解決問題的方法轉換成電腦程式的過程。除了程式語言撰寫能力,透過專題計畫,也訓練學生發展系統性解決問題,並將之以程式實現的能力。 
課程要求
基本能力:Windows/Mac/Linux基礎檔案管理。 
預期每週課後學習時數
 
Office Hours
 
指定閱讀
Ben Stephenson, The Python Workbook. Springer, 2019.
 
參考書目
The Python Standard Library (https://docs.python.org/3/library/index.html) 
評量方式
(僅供參考)
 
No.
項目
百分比
說明
1. 
Homework 
40% 
Take home assignments. 
2. 
Term Project 
40% 
Team project. 
3. 
In-class discussion 
20% 
Homework, project, QA. 
 
課程進度
週次
日期
單元主題
第1週
9/24  Introduction 
第2週
10/01  The basics (1/2) 
第3週
10/08  The basics (2/2) 
第4週
10/15  Functions 
第5週
10/22  Variables, modules 
第6週
10/29  Flow control - if else 
第7週
11/05  Flow control - for 
第8週
11/12  Flow control - while
(midterm week) 
第9週
11/19  Stage I review 
第10週
11/26  Data structure (1/2) 
第11週
12/03  全校運動會停課 
第12週
12/10  Data structure (2/2) 
第13週
12/17  Exception 
第14週
12/24  Class and objects 
第15週
12/31  元旦補假 
第16週
1/07  Inheritance
(final exam week) 
第17週
1/14  Term project discussion 
第18週
1/21  Term project presentation